package com.elitedatai.mchtest.manage.model.entity;

import com.elitedatai.mchtest.common.model.BaseEntity;
import lombok.Data;
import java.io.Serializable;

import jakarta.persistence.*;

/**
 * 用户实体类，映射数据库中的 manage_user 表
 * 实现 Serializable 接口以支持序列化
 */
@Entity
@Table(name = "manage_user")
@Data
public class UserEntity extends BaseEntity implements Serializable  {

    /**
     * 用户唯一标识符
     */
    @Column(name = "user_id")
    private String userId;

    /**
     * 用户名
     */
    @Column(name = "username")
    private String username;

    /**
     * 密码
     */
    @Column(name = "password")
    private String password;

    /**
     * 工作空间ID，用于标识用户所属的工作空间
     */
    @Column(name = "workspace_id")
    private String workspaceId;

    /**
     * 用户类型，用于区分不同权限级别的用户
     */
    @Column(name = "user_type")
    private Integer userType;

    /**
     * MQTT连接用户名
     */
    @Column(name = "mqtt_username")
    private String mqttUsername;

    /**
     * MQTT连接密码
     */
    @Column(name = "mqtt_password")
    private String mqttPassword;

}
